Operator Library: Hardware Platform
AppletProperties 연산자는 입력도 없고 출력도 없습니다. 이 연산자는 애플릿과 보드 하드웨어 설정을 제어합니다.
이 연산자는 애플릿을 설명하는 일련의 매개변수를 제공합니다. 일부 값은 사용자가 정의하는 반면, 다른 값들은 자동으로 생성됩니다.
이 연산자는 모든 설계에서 필수이며, VisualApplets 에 의해 자동으로 인스턴스화됩니다. 이 연산자는 삭제할 수 없습니다.
| 하드웨어 플랫폼별 지원 여부 |
|---|
| imaFlex 2 Dual 100 |
| imaFlex CXP-12 Penta |
| imaFlex CXP-12 Quad |
| mE5 marathon VCLx |
| mE5 marathon VCL |
| mE5 marathon VCX-QP |
| mE5 marathon VF2 |
| LightBridge VCL |
| mE5 ironman VQ8-CXP6D |
| mE5 ironman VQ8-CXP6B |
| mE5 ironman VD8-PoCL |
![]() |
사용 가능한 파라미터 |
|---|---|
|
AppletProperties 연산자는 각 하드웨어 플랫폼에 대해 특정 매개변수 집합을 제공합니다. 아래의 매개변수 설명은 어떤 하드웨어 플랫폼이 어떤 매개변수를 지원하는지 나타냅니다. 제한 사항이 명시되지 않은 경우, 해당 매개변수는 모든 플랫폼에서 지원됩니다. |
| VisualApplets 버전 (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
사용 중인 VisualApplets 버전의 버전 번호. |
|
| 프로젝트명 (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
메뉴에 명시된 프로젝트 이름 ‘디자인’ 메뉴의 ‘속성’ 항목. |
|
| 애플릿 버전 (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
‘디자인’ 메뉴의‘속성’ 메뉴 항목에 지정된 버전입니다. |
|
| AppletVendor (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
이 연산자의 ‘모듈’ 속성 대화 상자에서 애플릿 공급업체에 대한 정보를 입력할 수 있습니다. |
|
| AppletAuthor (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
이 연산자의 ‘모듈’ 속성 대화 상자에서 애플릿 작성자에 대한 정보를 입력할 수 있습니다. |
|
| 빌드 시간 (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
BuildTime 매개변수는 애플릿이 빌드된 시점(최신 넷리스트 생성 일시)을 나타내는 자동 생성된 문자열입니다. 이 매개변수 값은 Framegrabber SDK 에서만 확인할 수 있습니다. 다음 이미지는 해당 문자열의 서식 지정 방식을 보여줍니다: ![]() |
|
| AppletUid (모든 플랫폼) | |
|---|---|
| Type | 정적 읽기 파라미터 |
| Default | N/A |
| Range | N/A |
|
애플릿의 고유 ID입니다. 새로운 빌드가 생성될 때마다 새로운 ID가 생성됩니다( 선행 조건 검사가 설정된 경우). |
|
| FrontGpiPullControl03 / FrontGpiPullControl47 (imaFlex 2 Dual 100 플랫폼) | ||||
|---|---|---|---|---|
| Type | 동적, 정적 쓰기 매개변수 | |||
| Default | PullUp | |||
| Range | {PullUp, PullDown} | |||
|
이 매개변수는 전면 슬롯 GPI 신호의 풀업 및 풀다운 저항(20 kOhm)을 제어하며, 해당 신호가 차동 방식으로 구성되었는지 단일 종단 방식으로 구성되었는지와 무관합니다. GPI를 PullUp 또는 PullDown 상태로 설정할 수 있습니다. 풀 저항은 GPI 핀이 외부에서 구동되지 않거나 외부 드라이버가 프레임 그래버보다 늦게 전원이 켜질 때 해당 핀의 전압 레벨을 결정합니다. 외부 드라이버가 연결된 경우, 이 드라이버는 20 kOhm 풀 저항의 영향을 무효화할 수 있을 만큼 충분히 강력해야 합니다. FrontGpiPullControl03 매개변수는 GPI 그룹 채널 A(GPI 핀 0–3)의 동작을 제어하는 반면, FrontGpiPullControl47 매개변수는 GPI 그룹 채널 B(GPI 핀 4–7)의 동작을 제어합니다. 풀 저항이 정상적으로 작동하려면 외부 GPIO 전원을 해당 커넥터 핀(그룹 채널-A 또는 채널-B의 GPI 전압 입력 및 GPI 접지 입력)에 연결해야 합니다.
|
||||
| FrontGpiType03 / FrontGpiType47 (imaFlex 2 Dual 100 플랫폼) | ||||
|---|---|---|---|---|
| Type | 동적, 정적 쓰기 매개변수 | |||
| Default | 싱글엔디드 | |||
| Range | {단일 종단, 차동} | |||
|
이 매개변수는 GPI 핀이 차동 모드에서 작동할지, 아니면 단일 종단 모드에서 작동할지를 제어합니다. FrontGpiType03 매개변수는 그룹 채널-A(GPI 핀 0–3)를 관리하며, FrontGpiType47 매개변수는 그룹 채널-B(GPI 핀 4–7)를 관리합니다. In SingleEnded 모드에서는 각 GPI 핀의 신호가 변경되지 않은 채로 VisualApplets 로 전달되어, 그룹 내 네 개의 핀을 모두 독립적으로 사용할 수 있습니다. 에서 차동 모드에서는 짝수 번호의 GPI 핀 과 그 다음 홀수 번호의 핀이 결합되어 VisualApplets 에서 차동 채널을 형성합니다. 차동 모드가 활성화되면 짝수 핀은 차동 신호를 전달하는 반면, 홀수 핀은 음의 쌍 상태만을 나타내며 무시할 수 있습니다.
|
||||
| FiberPortProtocol0 / FiberPortProtocol1 (imaFlex 2 Dual 100 플랫폼) | ||||
|---|---|---|---|---|
| Type | 정적 쓰기 파라미터 | |||
| Default |
QSFP28[0]: CoF QSFP28[1]: 데이터 전달 |
|||
| Range | {CoF, DataForwarding} | |||
|
이 매개변수는 프레임 그래버의 해당 QSFP28 포트에 대한 광섬유 프로토콜을 정의합니다. 포트 0은 일반적으로 카메라 연결(CoF)에 사용되며, 포트 1은 다른 프레임 그래버로 데이터를 전달하는 데 사용됩니다. 슬레이브 프레임 그래버의 경우 일반적으로 두 포트 모두 DataForwarding으로 설정되어 있습니다. CoF CoaXPress over Fiber(CXP 3.0 표준)의 약자입니다. DataForwarding은 Basler의 프레임 그래버 간 통신을 위한 프로토콜입니다. 두 프로토콜 모두 레인당 25 Gbit/s를 지원하므로, QSFP28 포트당 100 Gbit/s의 전송 속도를 제공합니다. 특정 조건 하에서는 하나의 프레임 그래버에 100 Gbit/s 카메라 두 대를 연결할 수 있습니다. 이러한 구성에서는 특정 요구 사항을 충족해야 합니다. 그러나 프레임 그래버는 전처리를 수행하고, 생성된 대역폭을 최소 절반으로 줄인 후에야 PCIe 를 통해 호스트 메모리나 GPU 로 데이터를 전송할 수 있습니다. PCIe 약 13 GB/s의 유효 대역폭을 제공하는 반면, 단일 QSFP28 포트는 약 12.5 GB/s를 제공합니다. 두 개의 QSFP28 포트를 합치면 약 25 GB/s의 내부 대역폭이 생성되지만, 이는 사전 처리 및 대역폭 축소 없이는 PCIe 을 통해 전송할 수 없습니다. 또한, 보드의 RAM 시스템은 RAM을 통해 동시에 스트리밍할 수 있는 데이터 양에 추가적인 제약을 가합니다. 데이터 전달 기능에 대한 자세한 내용은 ‘ imaFlex 2 Dual 100 프레임 그래버를 이용한 데이터 전달’을 참조하십시오 .
|
||||
| DesignClock (모든 imaFlex 플랫폼) | ||||
|---|---|---|---|---|
| Type | 정적 읽기 파라미터 | |||
| Default | 312.5 | |||
| Range | [312.5; 400.0] | |||
|
이 매개변수는 메가헤르츠(MHz) 단위의 설계 시스템 클럭 주파수를 나타냅니다. VisualApplets 의 ‘Design’ 메뉴에서 ‘Change FPGA Clock’ 항목을 선택하여 설계 시스템 클럭 주파수를 변경할 수 있습니다. 135 MHz와 같이 더 높은 주파수 값을 설정할 경우 타이밍 위반이 발생할 수 있습니다. 이 경우 주파수를 낮추십시오.
|
||||
| DesignClock (mE5 marathon 및 LightBridge VCL 플랫폼) | ||||
|---|---|---|---|---|
| Type | 정적 읽기 파라미터 | |||
| Default | 125 | |||
| Range | [125;312.5] | |||
|
이 매개변수는 메가헤르츠(MHz) 단위의 설계 시스템 클럭 주파수를 나타냅니다. VisualApplets 의 ‘Design’ 메뉴에서 ‘Change FPGA Clock’ 항목을 선택하여 설계 시스템 클럭 주파수를 변경할 수 있습니다. 135 MHz와 같이 더 높은 주파수 값을 설정할 경우 타이밍 위반이 발생할 수 있습니다. 이 경우 주파수를 낮추십시오.
|
||||
| ExtensionGpioType (imaFlex CXP-12 Quad 및 imaFlex CXP-12 Penta 플랫폼) | |||||||
|---|---|---|---|---|---|---|---|
| Type | dynamic write 파라미터 | ||||||
| Default | OpenDrain | ||||||
| Range | {오픈드레인, 푸시풀} | ||||||
|
이 매개변수를 통해 사용자는 외부 확장 GPIO 커넥터의 회로 유형을 선택할 수 있습니다. 푸시풀 모드에서는 GPIO가 직접 구동됩니다.
|
|||||||
| FrontGpioPullControl (imaFlex CXP-12 Penta 플랫폼) | ||||
|---|---|---|---|---|
| Type | dynamic write 파라미터 | |||
| Default | PullUp | |||
| Range | {PullUp, PullDown} | |||
|
|
||||
| FrontGpioType (imaFlex CXP-12 Penta 플랫폼) | ||||
|---|---|---|---|---|
| Type | dynamic write 파라미터 | |||
| Default | 싱글엔디드 | |||
| Range | {단일 종단, 차동} | |||
|
|
||||
| FrontGpioInversion (imaFlex CXP-12 Penta 플랫폼) | ||||
|---|---|---|---|---|
| Type | dynamic write 파라미터 | |||
| Default | Off | |||
| Range | {켜기, 끄기} | |||
|
|
||||
| PcieInterfaceType (ironman 플랫폼) | ||||
|---|---|---|---|---|
| Type | 정적 쓰기 파라미터 | |||
| Default | 2세대 | |||
| Range | {1세대, 2세대} | |||
|
PcieInterfaceType 매개변수를 사용하면 PCIe 인터페이스 유형을 선택할 수 있으며, 이를 통해 지원되는 DMA 대역폭을 설정할 수 있습니다. Generation_2(기본값)은 PCIe 2세대 프로토콜을 의미하며, 3,600,000 바이트/초의 대역폭을 제공합니다. Generation_1은 1세대 프로토콜( PCIe )을 의미하며, 1,800,000 바이트/초의 대역폭을 제공합니다. Generation_1 설계는 FPGA 리소스를 약간 덜 사용합니다. Generation_1 설계를 사용하면 애플릿의 타이밍 클로저를 달성하기가 훨씬 더 쉽습니다. Generation_2는 최대 성능을 제공하지만, 애플릿의 타이밍 클로저를 달성하기는 더 어렵습니다. 타이밍을 충족시키기 위해서는 여러 번의 배치 및 라우팅 합성 실행이 필요할 가능성이 높습니다.
|
||||
| PcieInterfaceType (mE5 marathon 및 LightBridge VCL 플랫폼) | ||||
|---|---|---|---|---|
| Type | 정적 쓰기 파라미터 | |||
| Default | 2세대 | |||
| Range | {1세대, 2세대} | |||
|
PcieInterfaceType 매개변수를 사용하면 PCIe 인터페이스 유형을 선택할 수 있으며, 이를 통해 지원되는 DMA 대역폭을 설정할 수 있습니다. Generation_1: The applet only supports PCIE generation 1. Thus, the maximum DMA transmission bandwidth is ca. 900 MByte/s (1MByte = 1^10Byte). The DmaToPC operator is limited so that LinkParallelism x LinkPixelWidth needs to be <= 64 bit. Generation_2: The applet supports PCIE generation 2. Thus, the maximum DMA transmission bandwidth is ca. 1800 MByte/s (1MByte = 1^10Byte). The DmaToPC operator is limited so that LinkParallelism x LinkPixelWidth needs to be <= 128 bit. Generation_1 구현은 Generation_2 구현보다 더 적은 리소스를 소비합니다. Generation_1 모드는 Generation_2의 높은 대역폭이 필요하지 않지만 리소스가 부족한 설계에 유용합니다.
|
||||
| GpioType (mE5 marathon 및 ironman 플랫폼) | |||||||
|---|---|---|---|---|---|---|---|
| Type | dynamic write 파라미터 | ||||||
| Default | OpenDrain | ||||||
| Range | {오픈드레인, 푸시풀} | ||||||
|
이 매개변수를 통해 사용자는 외부 GPIO 커넥터의 회로 유형을 선택할 수 있습니다. 푸시풀 모드에서는 GPIO가 직접 구동됩니다.
|
|||||||
| BuildTimeStamp (모든 플랫폼 - 숨김) | ||||
|---|---|---|---|---|
| Type | 정적 쓰기 파라미터 | |||
| Default | N/A | |||
| Range | N/A | |||
BuildTimeStamp는 자동으로 생성되는 식별 번호입니다. 이는 32비트 타임스탬프로, 실행 시 애플릿에서 읽어내어 로드된 애플릿과 해당 애플릿의 실행 환경 간의 일관성을 확인하는 데 사용됩니다. |
||||
| ProjectNameHash (모든 플랫폼 - 비가시) | ||||
|---|---|---|---|---|
| Type | 정적 읽기 파라미터 | |||
| Default | N/A | |||
| Range | N/A | |||
ProjectName 항목(메뉴 ‘디자인’, 메뉴 항목 ‘속성’)에 대한 32비트 해시값입니다. 이 값은 런타임 중에 애플릿에서 읽어와 로드된 애플릿과 로드된 애플릿의 런타임 환경 간의 일관성을 확인하는 데 사용할 수 있습니다. |
||||
| AppletUidHigh (모든 플랫폼 - 숨김) | ||||
|---|---|---|---|---|
| Type | 정적 읽기 파라미터 | |||
| Default | N/A | |||
| Range | N/A | |||
AppletUid 매개변수는 128비트 정수를 나타냅니다. 이 정수의 상위 64비트는 AppletUidHigh에 숫자로 할당됩니다. |
||||
| AppletUidLow (모든 플랫폼 - 숨김) | ||||
|---|---|---|---|---|
| Type | 정적 읽기 파라미터 | |||
| Default | 1 | |||
| Range | {0; 2^32 – 1} | |||
AppletUid 매개변수는 128비트 정수를 나타냅니다. 이 정수의 하위 64비트는 AppletUidLow에 숫자로 할당됩니다. |
||||
다음 예제에서는 AppletProperties 연산자의 사용법을 보여줍니다.
-
예시 - 기본 습득
-
예시 - 기본 습득
-
예시 - 기본 습득
-
예시 - 기본 습득

![[참고]](../common/images/admon/note.png)

이전

